﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Biblioteca.Interfaces;
using System.Data;

namespace Biblioteca.Models
{
    public class EjemplarModel : IEjemplar
    {
        private BibliotecaStore db;

        public EjemplarModel(BibliotecaStore data)
        {
            this.db = data;
        }



        public void crearEjemplar(Ejemplar ejemplar)
        {
            db.Ejemplars.AddObject(ejemplar);
            db.SaveChanges();
        }

        public void modificarEjemplar(Ejemplar ejemplar)
        {
            db.ObjectStateManager.ChangeObjectState(ejemplar, EntityState.Modified);
            db.SaveChanges();
        }

        public void eliminarEjemplar(Ejemplar ejemplar)
        {
            throw new NotImplementedException();
        }

        public Ejemplar getSingle(int id)
        {
            throw new NotImplementedException();
        }


        public int disponibilidadMaterial(int id)
        {
            return this.db.Ejemplars.Where(m => m.Material == id).Where(t => t.Disponible == 1).Count();
        }


        public Ejemplar obtenerPrimerDisponible(int idMaterial)
        {
            return this.db.Ejemplars.Where(m => m.Material == idMaterial).Where(t => t.Disponible == 1).First();
        }
    }
}